package org.budgey.data;

import java.math.BigDecimal;

/*******************************************************************************
 * 
 ******************************************************************************/
public class Money
{
    /**  */
    private long cents;

    /***************************************************************************
     * @param cents
     **************************************************************************/
    public Money( long cents )
    {
        this.cents = cents;
    }

    /***************************************************************************
     * @param m
     * @return
     **************************************************************************/
    public Money add( Money m )
    {
        return new Money( this.cents + m.cents );
    }

    /***************************************************************************
     * @return
     **************************************************************************/
    public boolean isNegative()
    {
        return cents < 0;
    }

    /***************************************************************************
     * @return
     **************************************************************************/
    public BigDecimal toBigDecimal()
    {
        BigDecimal bd = new BigDecimal( cents );

        bd = bd.scaleByPowerOfTen( -2 );

        return bd;
    }

    /***************************************************************************
     * 
     **************************************************************************/
    @Override
    public String toString()
    {
        BigDecimal bd = toBigDecimal();
        return "$" + bd.toPlainString();
    }
}
